Personal computers and sophisticated calculators both have a similar hardware structure. Originally, both used general purpose microprocessors as the core of the units with discrete devices interfacing displays, keyboards and memories. Discrete devices such as registers, drivers, buffers and latches were used as necessary to operate the display, keyboard or memory. Keyboards of the matrix type also had devices to scan the keyboard for closure of keys and a decoder circuit to convert the keystroke information into a form which could be used by the microprocessor. A common bus, typically on a printed circuit board, was used to interconnect the microprocessor to the various interface and operational devices.
With the advent of large-scale integration (LSI), and very large-scale integration (VLSI), more and more of these discrete devices became integrated directly onto the microprocessor chip. The microprocessor also grew in computing power from simple 4 bit architecture, to now over 32 bit architecture. Because the discrete devices were internal to the chip, the need for a common bus disappeared. All interconnections were now directly on the circuitry of the chip. As the internal structure of the microprocessor chip grew, however, the number of pins for external connection also grew. External pins are required for interconnection for the displays, power supplies, keyboards and external memories. Pins were also required to connect to external devices such as printers. It is not uncommon to find specialty microprocessors or calculator chips with as many as 108 pins. Printed circuit boards became simpler because fewer components needed to be mounted on the board, but they became more difficult to produce because of the extremely fine traces needed to interconnect to a chip with so many pins.
In a typical calculator, having an 8K memory of 8 bits and an 8 by 8 matrix keyboard, the minimum number of external pins on the microprocessor required, for strictly connecting the keyboard and memory, would be 41. This would include 16 pins for the keyboard, 13 for memory address lines, 8 for memory data lines and a minimum of two for memory control lines. By using common input, output register pins of the calculator chip for both the memory and the keyboard, the number of external pins and hence the mechanical complexity of the microprocessor chip can be greatly reduced.